package com.xqb.modules.domain.po;

import com.xqb.common.annotation.Excel;
import com.xqb.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 互动提问的问题对象 std_interaction_question
 * 
 * @author xqb
 * @date 2024-10-14
 */
public class StdInteractionQuestion extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键，互动问题的id */
    private Long id;

    /** 互动问题的标题 */
    @Excel(name = "互动问题的标题")
    private String title;

    /** 问题描述信息 */
    @Excel(name = "问题描述信息")
    private String description;

    /** 所属课程id */
    @Excel(name = "所属课程id")
    private Long courseId;

    /** 所属课程章id */
    @Excel(name = "所属课程章id")
    private Long chapterId;

    /** 所属课程节id */
    @Excel(name = "所属课程节id")
    private Long sectionId;

    /** 提问学员id */
    @Excel(name = "提问学员id")
    private Long userId;

    /** 最新的一个回答的id */
    @Excel(name = "最新的一个回答的id")
    private Long latestAnswerId;

    /** 问题下的回答数量 */
    @Excel(name = "问题下的回答数量")
    private String answerTimes;

    /** 是否匿名，默认false */
    @Excel(name = "是否匿名，默认false")
    private Integer anonymity;

    /** 是否被隐藏，默认false */
    @Excel(name = "是否被隐藏，默认false")
    private Integer hidden;

    /** 管理端问题状态：0-未查看，1-已查看 */
    @Excel(name = "管理端问题状态：0-未查看，1-已查看")
    private Long status;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setTitle(String title) 
    {
        this.title = title;
    }

    public String getTitle() 
    {
        return title;
    }
    public void setDescription(String description) 
    {
        this.description = description;
    }

    public String getDescription() 
    {
        return description;
    }
    public void setCourseId(Long courseId) 
    {
        this.courseId = courseId;
    }

    public Long getCourseId() 
    {
        return courseId;
    }
    public void setChapterId(Long chapterId) 
    {
        this.chapterId = chapterId;
    }

    public Long getChapterId() 
    {
        return chapterId;
    }
    public void setSectionId(Long sectionId) 
    {
        this.sectionId = sectionId;
    }

    public Long getSectionId() 
    {
        return sectionId;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setLatestAnswerId(Long latestAnswerId) 
    {
        this.latestAnswerId = latestAnswerId;
    }

    public Long getLatestAnswerId() 
    {
        return latestAnswerId;
    }
    public void setAnswerTimes(String answerTimes) 
    {
        this.answerTimes = answerTimes;
    }

    public String getAnswerTimes() 
    {
        return answerTimes;
    }
    public void setAnonymity(Integer anonymity) 
    {
        this.anonymity = anonymity;
    }

    public Integer getAnonymity() 
    {
        return anonymity;
    }
    public void setHidden(Integer hidden) 
    {
        this.hidden = hidden;
    }

    public Integer getHidden() 
    {
        return hidden;
    }
    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("title", getTitle())
            .append("description", getDescription())
            .append("courseId", getCourseId())
            .append("chapterId", getChapterId())
            .append("sectionId", getSectionId())
            .append("userId", getUserId())
            .append("latestAnswerId", getLatestAnswerId())
            .append("answerTimes", getAnswerTimes())
            .append("anonymity", getAnonymity())
            .append("hidden", getHidden())
            .append("status", getStatus())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
